TCP/IP 四層模型/ HTTP 相關筆記


Posted by yunanpan on 2020-07-09

整理〈從傳紙條輕鬆學習基本網路概念〉文中傳紙條與網路概念的對照,以及第四週自我檢討部分筆記。


TCP/ IP 四層模型

應用層:HTTP(Hypertext Transfer Protocol)、FTP(File Transfer protocol)

規範通訊內容格式,以利電腦解析。
從訂便當的比喻對照:
回覆格式:Status code
動作標準化:HTTP method
格式統一、特殊需求:request header/ body
服務代碼:Port(連接埠),一台主機可以跑不同的服務。HTTP 預設為 80,FTP 為 21。

傳輸層:TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)

透過 TCP 三次握手確保雙方通訊收發正常。
而像是重視即時傳輸性的即時戰況、直播...等,則會使用 UDP。

網路互連層:IP(Internet Protocol)

傳紙條要知道寄、收信人是誰,在網路世界中也需知道來源與目的地。

網路存取層:海底電纜


HTTP Header

什麼是 HTTP Header?
先看〈MDN HTTP headers〉怎麼說:

HTTP headers allow the client and the server to pass additional information with the request or the response.

就像訂便當的舉例中,特殊需求的部分會寫在 header 一樣,額外資訊也會寫在 HTTP 的 Header 上。

常用的 HTTP Header

1. General

  • Request URL
  • Request Method
  • Status Code
  • Referrer Policy
    HTTP referer 可以檢查訪客從哪裡來,會有利於訪客分析,採用格式是 URL。但 URL 中可能會包含不便於透漏給第三知道的個人資訊,於是透過 Referrer Policy 用以規範 HTTP referer URL 如何發送。
    參考:
    1. HTTP參照位址
    2. MDN HTTP headers
    3. MDN Referrer-Policy
    4. Referrer Policy 介绍
一點也不重要的 fun fact:referer 是 referrer 的誤寫,而在中文配音的蠟筆小新動畫中,小新媽媽野原美冴唸做ㄧㄝˇ ㄩㄢˊ ㄇㄟˇ ㄧㄚˊ,其實中文發音應該是一ㄝˇ ㄩㄢˊ ㄇㄟˇ ㄏㄨˋ,但因為當初配音員唸錯了,於是就一直將錯就錯下去ㄌ。

2. Response Headers

3. Request Headers

  • User-Agent
    可以知道使用者用什麼瀏覽器、瀏覽器版本、網頁渲染引擎、電腦系統等資訊。

HTTP Method

  • GET:取得指定資料。像是搜尋資料。
  • POST:提交指定資源。像是填寫表單。
  • DELETE:刪除指定資源。
  • PATCH:指定資源的部份修改。

參考:

  1. MDN HTTP request methods
  2. RESTful API HTTP Methods

HTTP Stauts Code

主要分為 1~5 開頭五種。

  • 1 開頭:Informational responses
  • 2 開頭:Successful responses
  • 3 開頭:Redirects
  • 4 開頭:Client errors
  • 5 開頭:Server errors

較常見的 Status Code:

  • 200 OK:請求成功
  • 204 No Content
  • 301 Moved Permanently
  • 302 Found:與 301 不同的是請求資源的 URI 是暫時更動
  • 400 Bad Request:因 req 語法有問題,導致 server 無法解析。
  • 404 Not Found
  • 500 Internal Server Error:伺服器端發生未知或無法處理的錯誤
  • 503 Service Unavailable

參考:

  1. MDN HTTP response status codes









Related Posts

耦合 (coupling)

耦合 (coupling)

程式導師實驗計畫 Week 15 題目

程式導師實驗計畫 Week 15 題目

The way open PDF in android.

The way open PDF in android.


Comments